[INFO] cloning repository https://github.com/labiium/chat2response
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/labiium/chat2response" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flabiium%2Fchat2response", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flabiium%2Fchat2response'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 12f95de10921336b3beaf4f4467c41469bbd8fb3
[INFO] fixing labiium/chat2response against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flabiium%2Fchat2response" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-5-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/labiium/chat2response
[INFO] finished tweaking git repo https://github.com/labiium/chat2response
[INFO] tweaked toml for git repo https://github.com/labiium/chat2response written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/labiium/chat2response on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/labiium/chat2response already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] b18866f93e00edf7c1b1349536d5ae309c0720885f4a9126fe6a0983d4c6a704
[INFO] running `Command { std: "docker" "start" "b18866f93e00edf7c1b1349536d5ae309c0720885f4a9126fe6a0983d4c6a704", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b18866f93e00edf7c1b1349536d5ae309c0720885f4a9126fe6a0983d4c6a704" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b18866f93e00edf7c1b1349536d5ae309c0720885f4a9126fe6a0983d4c6a704", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b18866f93e00edf7c1b1349536d5ae309c0720885f4a9126fe6a0983d4c6a704" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]     Checking futures-core v0.3.32
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]     Checking futures-sink v0.3.32
[INFO] [stderr]     Checking futures-task v0.3.32
[INFO] [stderr]     Checking futures-io v0.3.32
[INFO] [stderr]     Checking ryu v1.0.23
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking typenum v1.20.0
[INFO] [stderr]     Checking hashbrown v0.17.0
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling time-core v0.1.8
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]     Checking outref v0.5.2
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking httpdate v1.0.3
[INFO] [stderr]     Checking vsimd v0.8.0
[INFO] [stderr]     Checking untrusted v0.9.0
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling aws-lc-rs v1.16.3
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]     Checking http v0.2.12
[INFO] [stderr]     Checking cmov v0.5.3
[INFO] [stderr]     Checking bytes-utils v0.1.4
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]     Checking base64-simd v0.8.0
[INFO] [stderr]     Checking cpufeatures v0.3.0
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]     Checking const-oid v0.10.2
[INFO] [stderr]     Checking rand_core v0.10.1
[INFO] [stderr]     Checking ctutils v0.4.2
[INFO] [stderr]     Checking openssl-probe v0.2.1
[INFO] [stderr]     Checking sync_wrapper v1.0.2
[INFO] [stderr]     Checking indexmap v2.14.0
[INFO] [stderr]     Checking tower-layer v0.3.3
[INFO] [stderr]     Checking ipnet v2.12.0
[INFO] [stderr]     Checking writeable v0.6.3
[INFO] [stderr]    Compiling rustls v0.21.12
[INFO] [stderr]     Checking bitflags v2.11.1
[INFO] [stderr]     Checking litemap v0.8.2
[INFO] [stderr]    Compiling rustls v0.23.39
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]     Checking http-body v1.0.1
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]    Compiling semver v1.0.28
[INFO] [stderr]     Checking rustls-native-certs v0.8.3
[INFO] [stderr]     Checking http-body-util v0.1.3
[INFO] [stderr]     Checking hybrid-array v0.4.10
[INFO] [stderr]     Checking simd-adler32 v0.3.9
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking regex-lite v0.1.9
[INFO] [stderr]     Checking fastrand v2.4.1
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking brotli v8.0.2
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]    Compiling aws-types v1.3.15
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling unicode-segmentation v1.13.2
[INFO] [stderr]     Checking local-waker v0.1.4
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling openssl v0.10.78
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking mio v1.2.0
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking socket2 v0.5.10
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]     Checking block-buffer v0.12.0
[INFO] [stderr]     Checking crypto-common v0.2.1
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking actix-utils v3.0.1
[INFO] [stderr]     Checking chacha20 v0.10.0
[INFO] [stderr]    Compiling cookie v0.16.2
[INFO] [stderr]     Checking bytestring v1.5.0
[INFO] [stderr]     Checking actix-service v2.0.3
[INFO] [stderr]     Checking encoding_rs v0.8.35
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling parking_lot_core v0.8.6
[INFO] [stderr]     Checking compression-core v0.4.31
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]     Checking rand v0.10.1
[INFO] [stderr]     Checking anstyle-parse v1.0.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking local-channel v0.1.5
[INFO] [stderr]     Checking instant v0.1.13
[INFO] [stderr]     Checking urlencoding v2.1.3
[INFO] [stderr]     Checking xmlparser v0.13.6
[INFO] [stderr]     Checking uuid v1.23.1
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking digest v0.11.2
[INFO] [stderr]     Checking anstyle-query v1.1.5
[INFO] [stderr]     Checking colorchoice v1.0.5
[INFO] [stderr]     Checking anstyle v1.0.14
[INFO] [stderr]     Checking cpufeatures v0.2.17
[INFO] [stderr]     Checking language-tags v0.3.2
[INFO] [stderr]     Checking hmac v0.13.0
[INFO] [stderr]    Compiling aws-lc-sys v0.40.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling openssl-sys v0.9.114
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]     Checking sha2 v0.11.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking sha1 v0.11.0
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.2
[INFO] [stderr]     Checking anstream v1.0.0
[INFO] [stderr]     Checking aws-smithy-xml v0.60.15
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]     Checking strsim v0.11.1
[INFO] [stderr]     Checking iri-string v0.7.12
[INFO] [stderr]     Checking impl-more v0.1.9
[INFO] [stderr]     Checking clap_lex v1.1.0
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]     Checking sharded-slab v0.1.7
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking compression-codecs v0.4.37
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking scheduled-thread-pool v0.2.7
[INFO] [stderr]     Checking fs2 v0.4.3
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking combine v4.6.7
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking sha1_smol v1.0.1
[INFO] [stderr]     Checking arcstr v1.2.0
[INFO] [stderr]     Checking xxhash-rust v0.8.15
[INFO] [stderr]     Checking unsafe-libyaml v0.2.11
[INFO] [stderr]     Checking nu-ansi-term v0.50.3
[INFO] [stderr]     Checking sled v0.34.7
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]     Checking r2d2 v0.8.10
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]    Compiling actix-router v0.5.4
[INFO] [stderr]     Checking matchers v0.2.0
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking linux-raw-sys v0.12.1
[INFO] [stderr]     Checking dotenvy v0.15.7
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking matchit v0.7.3
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling aws-smithy-runtime-api-macros v1.0.0
[INFO] [stderr]     Checking tokio v1.52.1
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling actix-macros v0.2.4
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking zerofrom v0.1.7
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]     Checking yoke v0.8.2
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking zerotrie v0.2.4
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]     Checking zerovec v0.11.6
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling actix-web-codegen v4.3.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling serde_with_macros v3.18.0
[INFO] [stderr]     Checking tinystr v0.8.3
[INFO] [stderr]     Checking potential_utf v0.1.5
[INFO] [stderr]     Checking icu_locale_core v2.2.0
[INFO] [stderr]     Checking sct v0.7.1
[INFO] [stderr]     Checking rustls-webpki v0.101.7
[INFO] [stderr]     Checking icu_collections v2.2.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]     Checking serde_with v3.18.0
[INFO] [stderr]     Checking async-stream v0.3.6
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking axum-core v0.4.5
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking clap v4.6.1
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking redis v1.2.0
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking aws-smithy-async v1.2.14
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-rustls v0.24.1
[INFO] [stderr]     Checking actix-rt v2.11.0
[INFO] [stderr]     Checking async-compression v0.4.41
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking actix-server v2.6.0
[INFO] [stderr]     Checking aws-smithy-types v1.4.7
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking h2 v0.3.27
[INFO] [stderr]     Checking actix-codec v0.5.2
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking aws-smithy-runtime-api v1.12.0
[INFO] [stderr]     Checking aws-smithy-eventstream v0.60.20
[INFO] [stderr]     Checking aws-smithy-json v0.62.5
[INFO] [stderr]     Checking aws-smithy-query v0.60.15
[INFO] [stderr]     Checking aws-smithy-http v0.63.6
[INFO] [stderr]     Checking aws-credential-types v1.2.14
[INFO] [stderr]     Checking aws-smithy-observability v0.2.6
[INFO] [stderr]     Checking aws-sigv4 v1.4.3
[INFO] [stderr]     Checking hyper v0.14.32
[INFO] [stderr]     Checking actix-http v3.12.1
[INFO] [stderr]     Checking hyper v1.9.0
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking actix-web v4.13.0
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking axum v0.7.9
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking hyper-rustls v0.24.2
[INFO] [stderr]     Checking actix-cors v0.7.1
[INFO] [stderr]     Checking rustls-webpki v0.103.13
[INFO] [stderr]     Checking tokio-rustls v0.26.4
[INFO] [stderr]     Checking hyper-rustls v0.27.9
[INFO] [stderr]     Checking aws-smithy-http-client v1.1.12
[INFO] [stderr]     Checking aws-smithy-runtime v1.11.1
[INFO] [stderr]     Checking aws-runtime v1.7.3
[INFO] [stderr]     Checking aws-sdk-sts v1.103.0
[INFO] [stderr]     Checking aws-sdk-sso v1.98.0
[INFO] [stderr]     Checking aws-sdk-ssooidc v1.100.0
[INFO] [stderr]     Checking aws-sdk-bedrockruntime v1.130.0
[INFO] [stderr]     Checking aws-config v1.8.16
[INFO] [stderr]     Checking routiium v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed src/util.rs (15 fixes)
[INFO] [stderr]        Fixed src/auth.rs (1 fix)
[INFO] [stderr]        Fixed src/rate_limit.rs (3 fixes)
[INFO] [stderr]        Fixed src/safety_judge.rs (17 fixes)
[INFO] [stderr]        Fixed src/server.rs (9 fixes)
[INFO] [stderr]        Fixed src/router_client.rs (1 fix)
[INFO] [stderr]        Fixed src/analytics_middleware.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bedrock.rs:1418:17
[INFO] [stdout]      |
[INFO] [stdout] 1418 |       Ok(Box::pin(async_stream::stream! {
[INFO] [stdout]      |  _________________^
[INFO] [stdout] 1419 | |         let mut buffer: Vec<u8> = Vec::new();
[INFO] [stdout] 1420 | |         loop {
[INFO] [stdout] 1421 | |             match stream.recv().await {
[INFO] [stdout]      | |                   -------------------
[INFO] [stdout]      | |                   |             |
[INFO] [stdout]      | |                   |             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      | |                   |             `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                   `__awaitee` calls a custom destructor
[INFO] [stdout]      | |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout] 1520 | |                                     buffer.drain(0..last_offset);
[INFO] [stdout]      | |                                     ----------------------------
[INFO] [stdout]      | |                                     |
[INFO] [stdout]      | |                                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                                     `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout] 1554 | |         });
[INFO] [stdout] 1555 | |     }))
[INFO] [stdout]      | |     ^
[INFO] [stdout]      | |     |
[INFO] [stdout]      | |     this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |     up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |_____`#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |       now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/drain.rs:173:0
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `async_stream::stream` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bedrock.rs:1421:19
[INFO] [stdout]      |
[INFO] [stdout] 1418 |       Ok(Box::pin(async_stream::stream! {
[INFO] [stdout]      |  _________________-
[INFO] [stdout] 1419 | |         let mut buffer: Vec<u8> = Vec::new();
[INFO] [stdout] 1420 | |         loop {
[INFO] [stdout] 1421 | |             match stream.recv().await {
[INFO] [stdout]      | |                   ^^^^^^^^^^^^^^-----
[INFO] [stdout]      | |                   |             |
[INFO] [stdout]      | |                   |             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      | |                   |             up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                   |             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      | |                   |             `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |                   up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                   `__awaitee` calls a custom destructor
[INFO] [stdout]      | |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout] 1520 | |                                     buffer.drain(0..last_offset);
[INFO] [stdout]      | |                                     ----------------------------
[INFO] [stdout]      | |                                     |
[INFO] [stdout]      | |                                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                                     `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout] 1543 | |                 Err(e) => {
[INFO] [stdout]      | |                     -
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     `e` calls a custom destructor
[INFO] [stdout]      | |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout] 1548 | |         }
[INFO] [stdout]      | |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...    |
[INFO] [stdout] 1554 | |         });
[INFO] [stdout] 1555 | |     }))
[INFO] [stdout]      | |     -
[INFO] [stdout]      | |     |
[INFO] [stdout]      | |     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |     `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_____this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |       `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/drain.rs:173:0
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/mcp_client.rs:237:19
[INFO] [stdout]      |
[INFO] [stdout]  237 |             match McpServerClient::new(server_config).await {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                   |                                   |
[INFO] [stdout]      |                   |                                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                   |                                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                   |                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   |                                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                   `__awaitee` calls a custom destructor
[INFO] [stdout]      |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  238 |                 Ok(client) => {
[INFO] [stdout]  239 |                     clients.insert(server_name.clone(), Mutex::new(client));
[INFO] [stdout]      |                     -------------------------------------------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                     `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  242 |                 Err(e) => {
[INFO] [stdout]      |                     -
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `e` calls a custom destructor
[INFO] [stdout]      |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  247 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/process/mod.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl<T: Kill> Drop for ChildDropGuard<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/process/mod.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl<T: Kill> Drop for ChildDropGuard<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/process/mod.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl<T: Kill> Drop for ChildDropGuard<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/mcp_client.rs:260:19
[INFO] [stdout]     |
[INFO] [stdout] 259 |             let mut client = client_mutex.lock().await;
[INFO] [stdout]     |                 ----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `client` calls a custom destructor
[INFO] [stdout]     |                 `client` will be dropped later as of Edition 2024
[INFO] [stdout] 260 |             match client.list_tools().await {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                   |                   |
[INFO] [stdout]     |                   |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                   |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 275 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]     |
[INFO] [stdout] 713 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/mcp_client.rs:260:39
[INFO] [stdout]     |
[INFO] [stdout] 259 |             let mut client = client_mutex.lock().await;
[INFO] [stdout]     |                 ----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `client` calls a custom destructor
[INFO] [stdout]     |                 `client` will be dropped later as of Edition 2024
[INFO] [stdout] 260 |             match client.list_tools().await {
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 275 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/mcp_client.rs:302:48
[INFO] [stdout]     |
[INFO] [stdout] 301 |         let mut client = client_mutex.lock().await;
[INFO] [stdout]     |             ----------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `client` calls a custom destructor
[INFO] [stdout]     |             `client` will be dropped later as of Edition 2024
[INFO] [stdout] 302 |         client.call_tool(tool_name, arguments).await
[INFO] [stdout]     |                                                ^^^^^
[INFO] [stdout]     |                                                |
[INFO] [stdout]     |                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 303 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:2734:15
[INFO] [stdout]      |
[INFO] [stdout] 2733 |         let manager = mgr.read().await;
[INFO] [stdout]      |             -------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `manager` calls a custom destructor
[INFO] [stdout]      |             `manager` will be dropped later as of Edition 2024
[INFO] [stdout] 2734 |         match manager.list_all_tools().await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                        |
[INFO] [stdout]      |               |                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |                        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2741 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `manager` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:2734:40
[INFO] [stdout]      |
[INFO] [stdout] 2733 |         let manager = mgr.read().await;
[INFO] [stdout]      |             -------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `manager` calls a custom destructor
[INFO] [stdout]      |             `manager` will be dropped later as of Edition 2024
[INFO] [stdout] 2734 |         match manager.list_all_tools().await {
[INFO] [stdout]      |                                        ^^^^^
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2741 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `manager` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:3715:5
[INFO] [stdout]      |
[INFO] [stdout] 3584 |     let routing_config = routing_guard.clone();
[INFO] [stdout]      |         --------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `routing_config` calls a custom destructor
[INFO] [stdout]      |         `routing_config` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 3715 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 3865 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `routing_config` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:4024:5
[INFO] [stdout]      |
[INFO] [stdout] 4001 |     let config = body.into_inner();
[INFO] [stdout]      |         ------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `config` calls a custom destructor
[INFO] [stdout]      |         `config` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4009 |     let loaded = match crate::routing_config::RoutingConfig::load_from_file(path) {
[INFO] [stdout]      |         ------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `loaded` calls a custom destructor
[INFO] [stdout]      |         `loaded` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4024 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4030 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `config` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `loaded` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:4562:10
[INFO] [stdout]      |
[INFO] [stdout] 4548 |         let mcp_manager_guard = if let Some(mgr) = state.mcp_manager.as_ref() {
[INFO] [stdout]      |             -----------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `mcp_manager_guard` calls a custom destructor
[INFO] [stdout]      |             `mcp_manager_guard` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4554 |         let system_prompt_guard = state.system_prompt_config.read().await;
[INFO] [stdout]      |             -------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `system_prompt_guard` calls a custom destructor
[INFO] [stdout]      |             `system_prompt_guard` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4562 |         .await
[INFO] [stdout]      |          ^^^^^
[INFO] [stdout]      |          |
[INFO] [stdout]      |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 4563 |     } else {
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `mcp_manager_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `system_prompt_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:4628:15
[INFO] [stdout]      |
[INFO] [stdout] 4627 |         let manager = mgr.read().await;
[INFO] [stdout]      |             -------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `manager` calls a custom destructor
[INFO] [stdout]      |             `manager` will be dropped later as of Edition 2024
[INFO] [stdout] 4628 |         match manager.list_all_tools().await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                        |
[INFO] [stdout]      |               |                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |                        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4638 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `manager` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:4628:40
[INFO] [stdout]      |
[INFO] [stdout] 4627 |         let manager = mgr.read().await;
[INFO] [stdout]      |             -------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `manager` calls a custom destructor
[INFO] [stdout]      |             `manager` will be dropped later as of Edition 2024
[INFO] [stdout] 4628 |         match manager.list_all_tools().await {
[INFO] [stdout]      |                                        ^^^^^
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4638 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `manager` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:5630:23
[INFO] [stdout]      |
[INFO] [stdout] 5630 |                   match mgr.generate_key(
[INFO] [stdout]      |  _______________________^
[INFO] [stdout] 5631 | |                     Some(label),
[INFO] [stdout] 5632 | |                     ttl_seconds.map(std::time::Duration::from_secs),
[INFO] [stdout] 5633 | |                     payload.scopes.clone(),
[INFO] [stdout] 5634 | |                 ) {
[INFO] [stdout]      | |                 ^
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |_________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 5635 |                       Ok(r#gen) => out.push(r#gen),
[INFO] [stdout] 5636 |                       Err(e) => {
[INFO] [stdout]      |                           -
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `e` calls a custom destructor
[INFO] [stdout]      |                           `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5643 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:5869:9
[INFO] [stdout]      |
[INFO] [stdout] 5862 |         let mut manager_guard = manager_arc.write().await;
[INFO] [stdout]      |             -----------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `manager_guard` calls a custom destructor
[INFO] [stdout]      |             `manager_guard` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5869 |         HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5875 |     } else {
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `manager_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6078:5
[INFO] [stdout]      |
[INFO] [stdout] 6073 |     let mut config_guard = state.system_prompt_config.write().await;
[INFO] [stdout]      |         ----------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `config_guard` calls a custom destructor
[INFO] [stdout]      |         `config_guard` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6078 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6087 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `config_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6126:5
[INFO] [stdout]      |
[INFO] [stdout] 6107 |     let config = match crate::routing_config::RoutingConfig::load_from_file(&config_path) {
[INFO] [stdout]      |         ------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `config` calls a custom destructor
[INFO] [stdout]      |         `config` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6119 |     let mut config_guard = state.routing_config.write().await;
[INFO] [stdout]      |         ----------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `config_guard` calls a custom destructor
[INFO] [stdout]      |         `config_guard` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6126 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6131 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `config` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `config_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6824:11
[INFO] [stdout]      |
[INFO] [stdout] 6823 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 6824 |     match mgr.list_policies().await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                   |
[INFO] [stdout]      |           |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6837 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6824:31
[INFO] [stdout]      |
[INFO] [stdout] 6823 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 6824 |     match mgr.list_policies().await {
[INFO] [stdout]      |                               ^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6837 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6851:11
[INFO] [stdout]      |
[INFO] [stdout] 6848 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6851 |     match mgr.create_policy(policy).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                         |
[INFO] [stdout]      |           |                         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                         up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6861 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6851:37
[INFO] [stdout]      |
[INFO] [stdout] 6848 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6851 |     match mgr.create_policy(policy).await {
[INFO] [stdout]      |                                     ^^^^^
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6861 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6874:11
[INFO] [stdout]      |
[INFO] [stdout] 6872 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 6873 |     let id = path.into_inner();
[INFO] [stdout] 6874 |     match mgr.get_policy(&id).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                   |
[INFO] [stdout]      |           |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6885 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6874:31
[INFO] [stdout]      |
[INFO] [stdout] 6872 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 6873 |     let id = path.into_inner();
[INFO] [stdout] 6874 |     match mgr.get_policy(&id).await {
[INFO] [stdout]      |                               ^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6885 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6901:11
[INFO] [stdout]      |
[INFO] [stdout] 6897 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6901 |     match mgr.update_policy(policy).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                         |
[INFO] [stdout]      |           |                         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                         up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6915 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6901:37
[INFO] [stdout]      |
[INFO] [stdout] 6897 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6901 |     match mgr.update_policy(policy).await {
[INFO] [stdout]      |                                     ^^^^^
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6915 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6928:11
[INFO] [stdout]      |
[INFO] [stdout] 6926 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 6927 |     let id = path.into_inner();
[INFO] [stdout] 6928 |     match mgr.delete_policy(&id).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                      |
[INFO] [stdout]      |           |                      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                      up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6942 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6928:34
[INFO] [stdout]      |
[INFO] [stdout] 6926 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 6927 |     let id = path.into_inner();
[INFO] [stdout] 6928 |     match mgr.delete_policy(&id).await {
[INFO] [stdout]      |                                  ^^^^^
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                  up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6942 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6982:5
[INFO] [stdout]      |
[INFO] [stdout] 6953 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6982 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6997 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7016:11
[INFO] [stdout]      |
[INFO] [stdout] 7014 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7015 |     let key_id = path.into_inner();
[INFO] [stdout] 7016 |     match mgr.assign_key_policy(&key_id, &body.policy_id).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                                               |
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                                               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7027 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7016:59
[INFO] [stdout]      |
[INFO] [stdout] 7014 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7015 |     let key_id = path.into_inner();
[INFO] [stdout] 7016 |     match mgr.assign_key_policy(&key_id, &body.policy_id).await {
[INFO] [stdout]      |                                                           ^^^^^
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7027 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7040:11
[INFO] [stdout]      |
[INFO] [stdout] 7038 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7039 |     let key_id = path.into_inner();
[INFO] [stdout] 7040 |     match mgr.remove_key_policy(&key_id).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                              |
[INFO] [stdout]      |           |                              this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                              up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7056 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7040:42
[INFO] [stdout]      |
[INFO] [stdout] 7038 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7039 |     let key_id = path.into_inner();
[INFO] [stdout] 7040 |     match mgr.remove_key_policy(&key_id).await {
[INFO] [stdout]      |                                          ^^^^^
[INFO] [stdout]      |                                          |
[INFO] [stdout]      |                                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7056 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7085:5
[INFO] [stdout]      |
[INFO] [stdout] 7063 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7085 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7089 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7106:11
[INFO] [stdout]      |
[INFO] [stdout] 7105 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7106 |     match mgr.set_default_policy(&body.policy_id).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                                       |
[INFO] [stdout]      |           |                                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7116 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7106:51
[INFO] [stdout]      |
[INFO] [stdout] 7105 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7106 |     match mgr.set_default_policy(&body.policy_id).await {
[INFO] [stdout]      |                                                   ^^^^^
[INFO] [stdout]      |                                                   |
[INFO] [stdout]      |                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7116 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7140:11
[INFO] [stdout]      |
[INFO] [stdout] 7134 |       let mgr = require_rl!(state);
[INFO] [stdout]      |           ---
[INFO] [stdout]      |           |
[INFO] [stdout]      |           `mgr` calls a custom destructor
[INFO] [stdout]      |           `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7140 |       match mgr
[INFO] [stdout]      |  ___________^
[INFO] [stdout] 7141 | |         .set_emergency_block(&body.key_id, Some(duration_secs), &reason)
[INFO] [stdout] 7142 | |         .await
[INFO] [stdout]      | |          ----^
[INFO] [stdout]      | |          |   |
[INFO] [stdout]      | |__________|___this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |            |   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |            up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7161 |   }
[INFO] [stdout]      |   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7142:10
[INFO] [stdout]      |
[INFO] [stdout] 7134 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7142 |         .await
[INFO] [stdout]      |          ^^^^^
[INFO] [stdout]      |          |
[INFO] [stdout]      |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7161 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7174:11
[INFO] [stdout]      |
[INFO] [stdout] 7172 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7173 |     let key_id = path.into_inner();
[INFO] [stdout] 7174 |     match mgr.remove_emergency_block(&key_id).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                                   |
[INFO] [stdout]      |           |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7185 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7174:47
[INFO] [stdout]      |
[INFO] [stdout] 7172 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7173 |     let key_id = path.into_inner();
[INFO] [stdout] 7174 |     match mgr.remove_emergency_block(&key_id).await {
[INFO] [stdout]      |                                               ^^^^^
[INFO] [stdout]      |                                               |
[INFO] [stdout]      |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7185 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7193:11
[INFO] [stdout]      |
[INFO] [stdout] 7192 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7193 |     match mgr.list_emergency_blocks().await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                           |
[INFO] [stdout]      |           |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7206 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7193:39
[INFO] [stdout]      |
[INFO] [stdout] 7192 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7193 |     match mgr.list_emergency_blocks().await {
[INFO] [stdout]      |                                       ^^^^^
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7206 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7220:5
[INFO] [stdout]      |
[INFO] [stdout] 7217 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7220 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7229 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7237:11
[INFO] [stdout]      |
[INFO] [stdout] 7236 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7237 |     match mgr.reload_file_config().await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                        |
[INFO] [stdout]      |           |                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7247 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7237:36
[INFO] [stdout]      |
[INFO] [stdout] 7236 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7237 |     match mgr.reload_file_config().await {
[INFO] [stdout]      |                                    ^^^^^
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7247 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7288:5
[INFO] [stdout]      |
[INFO] [stdout] 7266 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7288 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7295 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/util.rs:962:9
[INFO] [stdout]      |
[INFO] [stdout]  914 |     let mut req = client
[INFO] [stdout]      |         -------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `req` calls a custom destructor
[INFO] [stdout]      |         `req` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  929 |     let body_bytes = first.bytes().await.unwrap_or_default();
[INFO] [stdout]      |         ----------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `body_bytes` calls a custom destructor
[INFO] [stdout]      |         `body_bytes` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  962 |         HttpResponse::build(actix_web::http::StatusCode::from_u16(status2.as_u16()).unwrap())
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  965 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `req` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `req` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `req` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.32/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `req` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.32/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `req` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `req` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.78/src/ssl/mod.rs:1749:1
[INFO] [stdout]      |
[INFO] [stdout] 1749 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1750 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1751 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1762 | |     pub struct SslContextRef;
[INFO] [stdout] 1763 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `body_bytes` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `::foreign_types::foreign_type` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/util.rs:1052:15
[INFO] [stdout]      |
[INFO] [stdout] 1046 |     let mut resp_opt: Option<reqwest::Response> = None;
[INFO] [stdout]      |         ------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `resp_opt` calls a custom destructor
[INFO] [stdout]      |         `resp_opt` will be dropped later as of Edition 2024
[INFO] [stdout] 1047 |     let mut last_err: Option<anyhow::Error> = None;
[INFO] [stdout]      |         ------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `last_err` calls a custom destructor
[INFO] [stdout]      |         `last_err` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1050 |             tokio::time::sleep(std::time::Duration::from_millis(delay_ms)).await;
[INFO] [stdout]      |             --------------------------------------------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `__awaitee` calls a custom destructor
[INFO] [stdout]      |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 1051 |         }
[INFO] [stdout] 1052 |         match build_req().send().await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                  |
[INFO] [stdout]      |               |                  this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |               |                  up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               |                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |                  `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1063 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `resp_opt` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `resp_opt` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `last_err` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/auth.rs:1201:44
[INFO] [stdout]      |
[INFO] [stdout] 1185 |         let mgr = AuthManager::from_backend(KeyBackend::Memory).unwrap();
[INFO] [stdout]      |             ---
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `mgr` calls a custom destructor
[INFO] [stdout]      |             `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1201 |         match mgr.verify_async(&out.token).await {
[INFO] [stdout]      |                                            ^^^^^
[INFO] [stdout]      |                                            |
[INFO] [stdout]      |                                            this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                            up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1205 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/rate_limit.rs:756:31
[INFO] [stdout]     |
[INFO] [stdout] 739 |                         let current_iv = counters.get(&raw_key)?;
[INFO] [stdout]     |                             ----------
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             `current_iv` calls a custom destructor
[INFO] [stdout]     |                             `current_iv` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 756 |                         match counters.compare_and_swap(&raw_key, old_val, Some(new_val))? {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 760 |                     }
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current_iv` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/rate_limit.rs:805:31
[INFO] [stdout]     |
[INFO] [stdout] 784 |                         let current_iv = counters.get(&raw_curr)?;
[INFO] [stdout]     |                             ----------
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             `current_iv` calls a custom destructor
[INFO] [stdout]     |                             `current_iv` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 805 |                         match counters.compare_and_swap(&raw_curr, old_val, Some(new_val))? {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 809 |                     }
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current_iv` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:2543:19
[INFO] [stdout]      |
[INFO] [stdout] 2543 |             match Pin::new(&mut this.inner).poll_next(cx) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 2544 |                 Poll::Ready(Some(Ok(chunk))) => {
[INFO] [stdout]      |                                     -----
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     `chunk` calls a custom destructor
[INFO] [stdout]      |                                     `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2553 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bedrock.rs:1418:17
[INFO] [stdout]      |
[INFO] [stdout] 1418 |       Ok(Box::pin(async_stream::stream! {
[INFO] [stdout]      |  _________________^
[INFO] [stdout] 1419 | |         let mut buffer: Vec<u8> = Vec::new();
[INFO] [stdout] 1420 | |         loop {
[INFO] [stdout] 1421 | |             match stream.recv().await {
[INFO] [stdout]      | |                   -------------------
[INFO] [stdout]      | |                   |             |
[INFO] [stdout]      | |                   |             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      | |                   |             `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                   `__awaitee` calls a custom destructor
[INFO] [stdout]      | |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout] 1520 | |                                     buffer.drain(0..last_offset);
[INFO] [stdout]      | |                                     ----------------------------
[INFO] [stdout]      | |                                     |
[INFO] [stdout]      | |                                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                                     `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout] 1554 | |         });
[INFO] [stdout] 1555 | |     }))
[INFO] [stdout]      | |     ^
[INFO] [stdout]      | |     |
[INFO] [stdout]      | |     this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      | |     up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |_____`#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |       now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/drain.rs:173:0
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `async_stream::stream` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bedrock.rs:1421:19
[INFO] [stdout]      |
[INFO] [stdout] 1418 |       Ok(Box::pin(async_stream::stream! {
[INFO] [stdout]      |  _________________-
[INFO] [stdout] 1419 | |         let mut buffer: Vec<u8> = Vec::new();
[INFO] [stdout] 1420 | |         loop {
[INFO] [stdout] 1421 | |             match stream.recv().await {
[INFO] [stdout]      | |                   ^^^^^^^^^^^^^^-----
[INFO] [stdout]      | |                   |             |
[INFO] [stdout]      | |                   |             this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      | |                   |             up until Edition 2021 `#6` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                   |             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      | |                   |             `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      | |                   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      | |                   up until Edition 2021 `#5` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      | |                   `__awaitee` calls a custom destructor
[INFO] [stdout]      | |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout] 1520 | |                                     buffer.drain(0..last_offset);
[INFO] [stdout]      | |                                     ----------------------------
[INFO] [stdout]      | |                                     |
[INFO] [stdout]      | |                                     this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      | |                                     `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout] 1543 | |                 Err(e) => {
[INFO] [stdout]      | |                     -
[INFO] [stdout]      | |                     |
[INFO] [stdout]      | |                     `e` calls a custom destructor
[INFO] [stdout]      | |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...    |
[INFO] [stdout] 1548 | |         }
[INFO] [stdout]      | |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...    |
[INFO] [stdout] 1554 | |         });
[INFO] [stdout] 1555 | |     }))
[INFO] [stdout]      | |     -
[INFO] [stdout]      | |     |
[INFO] [stdout]      | |     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      | |     `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      | |_____this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |       `#4` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/drain.rs:173:0
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/mcp_client.rs:237:19
[INFO] [stdout]      |
[INFO] [stdout]  237 |             match McpServerClient::new(server_config).await {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                   |                                   |
[INFO] [stdout]      |                   |                                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                   |                                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                   |                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   |                                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                   up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                   `__awaitee` calls a custom destructor
[INFO] [stdout]      |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  238 |                 Ok(client) => {
[INFO] [stdout]  239 |                     clients.insert(server_name.clone(), Mutex::new(client));
[INFO] [stdout]      |                     -------------------------------------------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                     `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  242 |                 Err(e) => {
[INFO] [stdout]      |                     -
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `e` calls a custom destructor
[INFO] [stdout]      |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  247 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/process/mod.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl<T: Kill> Drop for ChildDropGuard<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/process/mod.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl<T: Kill> Drop for ChildDropGuard<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/process/mod.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl<T: Kill> Drop for ChildDropGuard<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/mcp_client.rs:260:19
[INFO] [stdout]     |
[INFO] [stdout] 259 |             let mut client = client_mutex.lock().await;
[INFO] [stdout]     |                 ----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `client` calls a custom destructor
[INFO] [stdout]     |                 `client` will be dropped later as of Edition 2024
[INFO] [stdout] 260 |             match client.list_tools().await {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                   |                   |
[INFO] [stdout]     |                   |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                   |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 275 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]     |
[INFO] [stdout] 713 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/mcp_client.rs:260:39
[INFO] [stdout]     |
[INFO] [stdout] 259 |             let mut client = client_mutex.lock().await;
[INFO] [stdout]     |                 ----------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `client` calls a custom destructor
[INFO] [stdout]     |                 `client` will be dropped later as of Edition 2024
[INFO] [stdout] 260 |             match client.list_tools().await {
[INFO] [stdout]     |                                       ^^^^^
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 275 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/mcp_client.rs:302:48
[INFO] [stdout]     |
[INFO] [stdout] 301 |         let mut client = client_mutex.lock().await;
[INFO] [stdout]     |             ----------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `client` calls a custom destructor
[INFO] [stdout]     |             `client` will be dropped later as of Edition 2024
[INFO] [stdout] 302 |         client.call_tool(tool_name, arguments).await
[INFO] [stdout]     |                                                ^^^^^
[INFO] [stdout]     |                                                |
[INFO] [stdout]     |                                                this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                                up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 303 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `client` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mutex.rs:964:1
[INFO] [stdout]     |
[INFO] [stdout] 964 | impl<T: ?Sized> Drop for MutexGuard<'_, T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:2734:15
[INFO] [stdout]      |
[INFO] [stdout] 2733 |         let manager = mgr.read().await;
[INFO] [stdout]      |             -------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `manager` calls a custom destructor
[INFO] [stdout]      |             `manager` will be dropped later as of Edition 2024
[INFO] [stdout] 2734 |         match manager.list_all_tools().await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                        |
[INFO] [stdout]      |               |                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |                        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2741 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `manager` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:2734:40
[INFO] [stdout]      |
[INFO] [stdout] 2733 |         let manager = mgr.read().await;
[INFO] [stdout]      |             -------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `manager` calls a custom destructor
[INFO] [stdout]      |             `manager` will be dropped later as of Edition 2024
[INFO] [stdout] 2734 |         match manager.list_all_tools().await {
[INFO] [stdout]      |                                        ^^^^^
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2741 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `manager` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:3715:5
[INFO] [stdout]      |
[INFO] [stdout] 3584 |     let routing_config = routing_guard.clone();
[INFO] [stdout]      |         --------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `routing_config` calls a custom destructor
[INFO] [stdout]      |         `routing_config` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 3715 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 3865 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `routing_config` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:4024:5
[INFO] [stdout]      |
[INFO] [stdout] 4001 |     let config = body.into_inner();
[INFO] [stdout]      |         ------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `config` calls a custom destructor
[INFO] [stdout]      |         `config` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4009 |     let loaded = match crate::routing_config::RoutingConfig::load_from_file(path) {
[INFO] [stdout]      |         ------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `loaded` calls a custom destructor
[INFO] [stdout]      |         `loaded` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4024 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4030 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `config` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `loaded` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:4562:10
[INFO] [stdout]      |
[INFO] [stdout] 4548 |         let mcp_manager_guard = if let Some(mgr) = state.mcp_manager.as_ref() {
[INFO] [stdout]      |             -----------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `mcp_manager_guard` calls a custom destructor
[INFO] [stdout]      |             `mcp_manager_guard` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4554 |         let system_prompt_guard = state.system_prompt_config.read().await;
[INFO] [stdout]      |             -------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `system_prompt_guard` calls a custom destructor
[INFO] [stdout]      |             `system_prompt_guard` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4562 |         .await
[INFO] [stdout]      |          ^^^^^
[INFO] [stdout]      |          |
[INFO] [stdout]      |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 4563 |     } else {
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `mcp_manager_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `system_prompt_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:4628:15
[INFO] [stdout]      |
[INFO] [stdout] 4627 |         let manager = mgr.read().await;
[INFO] [stdout]      |             -------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `manager` calls a custom destructor
[INFO] [stdout]      |             `manager` will be dropped later as of Edition 2024
[INFO] [stdout] 4628 |         match manager.list_all_tools().await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                        |
[INFO] [stdout]      |               |                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |                        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4638 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `manager` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:4628:40
[INFO] [stdout]      |
[INFO] [stdout] 4627 |         let manager = mgr.read().await;
[INFO] [stdout]      |             -------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `manager` calls a custom destructor
[INFO] [stdout]      |             `manager` will be dropped later as of Edition 2024
[INFO] [stdout] 4628 |         match manager.list_all_tools().await {
[INFO] [stdout]      |                                        ^^^^^
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 4638 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `manager` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/read_guard.rs:178:1
[INFO] [stdout]      |
[INFO] [stdout]  178 | impl<'a, T: ?Sized> Drop for RwLockReadGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:5630:23
[INFO] [stdout]      |
[INFO] [stdout] 5630 |                   match mgr.generate_key(
[INFO] [stdout]      |  _______________________^
[INFO] [stdout] 5631 | |                     Some(label),
[INFO] [stdout] 5632 | |                     ttl_seconds.map(std::time::Duration::from_secs),
[INFO] [stdout] 5633 | |                     payload.scopes.clone(),
[INFO] [stdout] 5634 | |                 ) {
[INFO] [stdout]      | |                 ^
[INFO] [stdout]      | |                 |
[INFO] [stdout]      | |_________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 5635 |                       Ok(r#gen) => out.push(r#gen),
[INFO] [stdout] 5636 |                       Err(e) => {
[INFO] [stdout]      |                           -
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `e` calls a custom destructor
[INFO] [stdout]      |                           `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5643 |               }
[INFO] [stdout]      |               - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:5869:9
[INFO] [stdout]      |
[INFO] [stdout] 5862 |         let mut manager_guard = manager_arc.write().await;
[INFO] [stdout]      |             -----------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `manager_guard` calls a custom destructor
[INFO] [stdout]      |             `manager_guard` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5869 |         HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5875 |     } else {
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `manager_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6078:5
[INFO] [stdout]      |
[INFO] [stdout] 6073 |     let mut config_guard = state.system_prompt_config.write().await;
[INFO] [stdout]      |         ----------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `config_guard` calls a custom destructor
[INFO] [stdout]      |         `config_guard` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6078 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6087 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `config_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6126:5
[INFO] [stdout]      |
[INFO] [stdout] 6107 |     let config = match crate::routing_config::RoutingConfig::load_from_file(&config_path) {
[INFO] [stdout]      |         ------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `config` calls a custom destructor
[INFO] [stdout]      |         `config` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6119 |     let mut config_guard = state.routing_config.write().await;
[INFO] [stdout]      |         ----------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `config_guard` calls a custom destructor
[INFO] [stdout]      |         `config_guard` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6126 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6131 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `config` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `config_guard` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/rwlock/write_guard.rs:444:1
[INFO] [stdout]      |
[INFO] [stdout]  444 | impl<'a, T: ?Sized> Drop for RwLockWriteGuard<'a, T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6824:11
[INFO] [stdout]      |
[INFO] [stdout] 6823 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 6824 |     match mgr.list_policies().await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                   |
[INFO] [stdout]      |           |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6837 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6824:31
[INFO] [stdout]      |
[INFO] [stdout] 6823 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 6824 |     match mgr.list_policies().await {
[INFO] [stdout]      |                               ^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6837 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6851:11
[INFO] [stdout]      |
[INFO] [stdout] 6848 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6851 |     match mgr.create_policy(policy).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                         |
[INFO] [stdout]      |           |                         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                         up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6861 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6851:37
[INFO] [stdout]      |
[INFO] [stdout] 6848 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6851 |     match mgr.create_policy(policy).await {
[INFO] [stdout]      |                                     ^^^^^
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6861 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6874:11
[INFO] [stdout]      |
[INFO] [stdout] 6872 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 6873 |     let id = path.into_inner();
[INFO] [stdout] 6874 |     match mgr.get_policy(&id).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                   |
[INFO] [stdout]      |           |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6885 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6874:31
[INFO] [stdout]      |
[INFO] [stdout] 6872 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 6873 |     let id = path.into_inner();
[INFO] [stdout] 6874 |     match mgr.get_policy(&id).await {
[INFO] [stdout]      |                               ^^^^^
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6885 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6901:11
[INFO] [stdout]      |
[INFO] [stdout] 6897 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6901 |     match mgr.update_policy(policy).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                         |
[INFO] [stdout]      |           |                         this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                         up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6915 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6901:37
[INFO] [stdout]      |
[INFO] [stdout] 6897 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6901 |     match mgr.update_policy(policy).await {
[INFO] [stdout]      |                                     ^^^^^
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6915 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6928:11
[INFO] [stdout]      |
[INFO] [stdout] 6926 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 6927 |     let id = path.into_inner();
[INFO] [stdout] 6928 |     match mgr.delete_policy(&id).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                      |
[INFO] [stdout]      |           |                      this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                      up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6942 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6928:34
[INFO] [stdout]      |
[INFO] [stdout] 6926 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 6927 |     let id = path.into_inner();
[INFO] [stdout] 6928 |     match mgr.delete_policy(&id).await {
[INFO] [stdout]      |                                  ^^^^^
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                  up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6942 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:6982:5
[INFO] [stdout]      |
[INFO] [stdout] 6953 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6982 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6997 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7016:11
[INFO] [stdout]      |
[INFO] [stdout] 7014 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7015 |     let key_id = path.into_inner();
[INFO] [stdout] 7016 |     match mgr.assign_key_policy(&key_id, &body.policy_id).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                                               |
[INFO] [stdout]      |           |                                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                                               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7027 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7016:59
[INFO] [stdout]      |
[INFO] [stdout] 7014 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7015 |     let key_id = path.into_inner();
[INFO] [stdout] 7016 |     match mgr.assign_key_policy(&key_id, &body.policy_id).await {
[INFO] [stdout]      |                                                           ^^^^^
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7027 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7040:11
[INFO] [stdout]      |
[INFO] [stdout] 7038 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7039 |     let key_id = path.into_inner();
[INFO] [stdout] 7040 |     match mgr.remove_key_policy(&key_id).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                              |
[INFO] [stdout]      |           |                              this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                              up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7056 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7040:42
[INFO] [stdout]      |
[INFO] [stdout] 7038 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7039 |     let key_id = path.into_inner();
[INFO] [stdout] 7040 |     match mgr.remove_key_policy(&key_id).await {
[INFO] [stdout]      |                                          ^^^^^
[INFO] [stdout]      |                                          |
[INFO] [stdout]      |                                          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7056 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7085:5
[INFO] [stdout]      |
[INFO] [stdout] 7063 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7085 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7089 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7106:11
[INFO] [stdout]      |
[INFO] [stdout] 7105 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7106 |     match mgr.set_default_policy(&body.policy_id).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                                       |
[INFO] [stdout]      |           |                                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                                       up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7116 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7106:51
[INFO] [stdout]      |
[INFO] [stdout] 7105 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7106 |     match mgr.set_default_policy(&body.policy_id).await {
[INFO] [stdout]      |                                                   ^^^^^
[INFO] [stdout]      |                                                   |
[INFO] [stdout]      |                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7116 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7140:11
[INFO] [stdout]      |
[INFO] [stdout] 7134 |       let mgr = require_rl!(state);
[INFO] [stdout]      |           ---
[INFO] [stdout]      |           |
[INFO] [stdout]      |           `mgr` calls a custom destructor
[INFO] [stdout]      |           `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7140 |       match mgr
[INFO] [stdout]      |  ___________^
[INFO] [stdout] 7141 | |         .set_emergency_block(&body.key_id, Some(duration_secs), &reason)
[INFO] [stdout] 7142 | |         .await
[INFO] [stdout]      | |          ----^
[INFO] [stdout]      | |          |   |
[INFO] [stdout]      | |__________|___this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |            |   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |            this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |            up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7161 |   }
[INFO] [stdout]      |   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7142:10
[INFO] [stdout]      |
[INFO] [stdout] 7134 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7142 |         .await
[INFO] [stdout]      |          ^^^^^
[INFO] [stdout]      |          |
[INFO] [stdout]      |          this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |          up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7161 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7174:11
[INFO] [stdout]      |
[INFO] [stdout] 7172 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7173 |     let key_id = path.into_inner();
[INFO] [stdout] 7174 |     match mgr.remove_emergency_block(&key_id).await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                                   |
[INFO] [stdout]      |           |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7185 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7174:47
[INFO] [stdout]      |
[INFO] [stdout] 7172 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7173 |     let key_id = path.into_inner();
[INFO] [stdout] 7174 |     match mgr.remove_emergency_block(&key_id).await {
[INFO] [stdout]      |                                               ^^^^^
[INFO] [stdout]      |                                               |
[INFO] [stdout]      |                                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7185 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7193:11
[INFO] [stdout]      |
[INFO] [stdout] 7192 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7193 |     match mgr.list_emergency_blocks().await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                           |
[INFO] [stdout]      |           |                           this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                           up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7206 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7193:39
[INFO] [stdout]      |
[INFO] [stdout] 7192 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7193 |     match mgr.list_emergency_blocks().await {
[INFO] [stdout]      |                                       ^^^^^
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7206 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7220:5
[INFO] [stdout]      |
[INFO] [stdout] 7217 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7220 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7229 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7237:11
[INFO] [stdout]      |
[INFO] [stdout] 7236 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7237 |     match mgr.reload_file_config().await {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |           |                        |
[INFO] [stdout]      |           |                        this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |           |                        up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7247 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7237:36
[INFO] [stdout]      |
[INFO] [stdout] 7236 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] 7237 |     match mgr.reload_file_config().await {
[INFO] [stdout]      |                                    ^^^^^
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7247 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:7288:5
[INFO] [stdout]      |
[INFO] [stdout] 7266 |     let mgr = require_rl!(state);
[INFO] [stdout]      |         ---
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `mgr` calls a custom destructor
[INFO] [stdout]      |         `mgr` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7288 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7295 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `mgr` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/util.rs:962:9
[INFO] [stdout]      |
[INFO] [stdout]  914 |     let mut req = client
[INFO] [stdout]      |         -------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `req` calls a custom destructor
[INFO] [stdout]      |         `req` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  929 |     let body_bytes = first.bytes().await.unwrap_or_default();
[INFO] [stdout]      |         ----------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `body_bytes` calls a custom destructor
[INFO] [stdout]      |         `body_bytes` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  962 |         HttpResponse::build(actix_web::http::StatusCode::from_u16(status2.as_u16()).unwrap())
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  965 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]      |
[INFO] [stdout]  159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `req` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `req` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `req` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.32/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `req` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.32/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `req` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `req` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.78/src/ssl/mod.rs:1749:1
[INFO] [stdout]      |
[INFO] [stdout] 1749 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1750 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1751 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1762 | |     pub struct SslContextRef;
[INFO] [stdout] 1763 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `body_bytes` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `::foreign_types::foreign_type` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/util.rs:1052:15
[INFO] [stdout]      |
[INFO] [stdout] 1046 |     let mut resp_opt: Option<reqwest::Response> = None;
[INFO] [stdout]      |         ------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `resp_opt` calls a custom destructor
[INFO] [stdout]      |         `resp_opt` will be dropped later as of Edition 2024
[INFO] [stdout] 1047 |     let mut last_err: Option<anyhow::Error> = None;
[INFO] [stdout]      |         ------------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `last_err` calls a custom destructor
[INFO] [stdout]      |         `last_err` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1050 |             tokio::time::sleep(std::time::Duration::from_millis(delay_ms)).await;
[INFO] [stdout]      |             --------------------------------------------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `__awaitee` calls a custom destructor
[INFO] [stdout]      |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] 1051 |         }
[INFO] [stdout] 1052 |         match build_req().send().await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                  |
[INFO] [stdout]      |               |                  this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |               |                  up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               |                  this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |                  `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1063 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `resp_opt` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `resp_opt` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `last_err` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/rate_limit.rs:756:31
[INFO] [stdout]     |
[INFO] [stdout] 739 |                         let current_iv = counters.get(&raw_key)?;
[INFO] [stdout]     |                             ----------
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             `current_iv` calls a custom destructor
[INFO] [stdout]     |                             `current_iv` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 756 |                         match counters.compare_and_swap(&raw_key, old_val, Some(new_val))? {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 760 |                     }
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current_iv` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/rate_limit.rs:805:31
[INFO] [stdout]     |
[INFO] [stdout] 784 |                         let current_iv = counters.get(&raw_curr)?;
[INFO] [stdout]     |                             ----------
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             `current_iv` calls a custom destructor
[INFO] [stdout]     |                             `current_iv` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 805 |                         match counters.compare_and_swap(&raw_curr, old_val, Some(new_val))? {
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                               |
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                               up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 809 |                     }
[INFO] [stdout]     |                     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current_iv` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/server.rs:2543:19
[INFO] [stdout]      |
[INFO] [stdout] 2543 |             match Pin::new(&mut this.inner).poll_next(cx) {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 2544 |                 Poll::Ready(Some(Ok(chunk))) => {
[INFO] [stdout]      |                                     -----
[INFO] [stdout]      |                                     |
[INFO] [stdout]      |                                     `chunk` calls a custom destructor
[INFO] [stdout]      |                                     `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2553 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating tests/integration_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating src/main.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> tests/integration_tests.rs:642:29
[INFO] [stdout]     |
[INFO] [stdout] 642 |     while let Some(chunk) = stream.next().await {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                             |             |
[INFO] [stdout]     |                             |             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             |             `#1` will be dropped later as of Edition 2024
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                             up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 643 |         let chunk = chunk.expect("Failed to read chunk");
[INFO] [stdout]     |             -----
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `chunk` calls a custom destructor
[INFO] [stdout]     |             `chunk` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 664 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `chunk` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/cli.rs (6 fixes)
[INFO] [stderr]    Migrating tests/safety_audit_tests.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed src/main.rs (5 fixes)
[INFO] [stderr]        Fixed tests/safety_audit_tests.rs (7 fixes)
[INFO] [stderr]    Migrating examples/router_service.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/rate_limit_tests.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> examples/router_service.rs:821:5
[INFO] [stdout]     |
[INFO] [stdout] 812 |     let mut log = state.feedback_log.lock().unwrap();
[INFO] [stdout]     |         -------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `log` calls a custom destructor
[INFO] [stdout]     |         `log` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 821 |     HttpResponse::Ok().json(serde_json::json!({"status": "ok"}))
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 822 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `log` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> examples/router_service.rs:849:5
[INFO] [stdout]     |
[INFO] [stdout] 835 |     let feedback_log = state.feedback_log.lock().unwrap();
[INFO] [stdout]     |         ------------
[INFO] [stdout]     |         |
[INFO] [stdout]     |         `feedback_log` calls a custom destructor
[INFO] [stdout]     |         `feedback_log` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 849 |     HttpResponse::Ok().json(serde_json::json!({
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |     up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 858 | }
[INFO] [stdout]     | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/actix-http-3.12.1/src/responses/head.rs:159:1
[INFO] [stdout]     |
[INFO] [stdout] 159 | impl Drop for BoxedResponseHead {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `feedback_log` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed tests/rate_limit_tests.rs (12 fixes)
[INFO] [stderr]    Migrating tests/mcp_injection_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/router_integration.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed tests/mcp_injection_tests.rs (4 fixes)
[INFO] [stderr]        Fixed tests/router_integration.rs (13 fixes)
[INFO] [stderr]    Migrating tests/system_prompt_tests.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> tests/router_integration.rs:67:29
[INFO] [stdout]      |
[INFO] [stdout]   65 |     let base_state = AppState::default();
[INFO] [stdout]      |         ----------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `base_state` calls a custom destructor
[INFO] [stdout]      |         `base_state` will be dropped later as of Edition 2024
[INFO] [stdout]   66 |     AppState {
[INFO] [stdout]   67 |         router_client: Some(Arc::new(cached) as Arc<dyn RouterClient>),
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]   77 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: `base_state` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/os/fd/owned.rs:196:0
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]      |
[INFO] [stdout]  150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]      |
[INFO] [stdout]  150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]      |
[INFO] [stdout]  150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]      |
[INFO] [stdout]  150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]      |
[INFO] [stdout]  150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/sled-0.34.7/src/arc.rs:150:1
[INFO] [stdout]      |
[INFO] [stdout]  150 | impl<T: ?Sized> Drop for Arc<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/arcstr-1.2.0/src/arc_str.rs:1022:1
[INFO] [stdout]      |
[INFO] [stdout] 1022 | impl Drop for ArcStr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/io/poll_evented.rs:312:1
[INFO] [stdout]      |
[INFO] [stdout]  312 | impl<E: Source> Drop for PollEvented<E> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/process/mod.rs:1123:1
[INFO] [stdout]      |
[INFO] [stdout] 1123 | impl<T: Kill> Drop for ChildDropGuard<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.32/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/futures-channel-0.3.32/src/oneshot.rs:387:1
[INFO] [stdout]      |
[INFO] [stdout]  387 | impl<T> Drop for Sender<T> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.1/src/sync/mpsc/chan.rs:225:1
[INFO] [stdout]      |
[INFO] [stdout]  225 | impl<T, S> Drop for Tx<T, S> {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `base_state` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/foreign-types-0.3.2/src/lib.rs:238:9
[INFO] [stdout]      |
[INFO] [stdout]  238 |           impl Drop for $owned {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/openssl-0.10.78/src/ssl/mod.rs:1749:1
[INFO] [stdout]      |
[INFO] [stdout] 1749 | / foreign_type_and_impl_send_sync! {
[INFO] [stdout] 1750 | |     type CType = ffi::SSL_CTX;
[INFO] [stdout] 1751 | |     fn drop = ffi::SSL_CTX_free;
[INFO] [stdout] ...    |
[INFO] [stdout] 1762 | |     pub struct SslContextRef;
[INFO] [stdout] 1763 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]      = note: this warning originates in the macro `::foreign_types::foreign_type` which comes from the expansion of the macro `foreign_type_and_impl_send_sync` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating tests/admin_endpoints_tests.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed tests/admin_endpoints_tests.rs (11 fixes)
[INFO] [stderr]    Migrating tests/vllm_forwarding_tests.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed tests/vllm_forwarding_tests.rs (15 fixes)
[INFO] [stderr]    Migrating tests/response_body_conversion_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/embedded_router_security.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed tests/embedded_router_security.rs (10 fixes)
[INFO] [stderr]    Migrating tests/conversion_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/reload_tests.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed tests/reload_tests.rs (5 fixes)
[INFO] [stderr]    Migrating tests/comprehensive_conversion_tests.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/test_chat_history.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/server_build.rs from 2021 edition to 2024
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 55s
[INFO] [stderr] crater-edition-check: routiium v0.3.0 (/opt/rustwide/workdir) updating edition from 2021 to 2024
[INFO] [stderr]     Checking routiium v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> src/util.rs:152:9
[INFO] [stdout]     |
[INFO] [stdout] 152 |         unsafe { std::env::set_var(key, value) };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:1:11
[INFO] [stdout]     |
[INFO] [stdout]   1 | #![forbid(unsafe_code)]
[INFO] [stdout]     |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2255:9
[INFO] [stdout]      |
[INFO] [stdout] 2255 |         unsafe { std::env::set_var("ROUTIIUM_RESPONSE_GUARD", "protect") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/lib.rs:1:11
[INFO] [stdout]      |
[INFO] [stdout]    1 | #![forbid(unsafe_code)]
[INFO] [stdout]      |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2265:9
[INFO] [stdout]      |
[INFO] [stdout] 2265 |         unsafe { std::env::remove_var("ROUTIIUM_RESPONSE_GUARD") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2272:9
[INFO] [stdout]      |
[INFO] [stdout] 2272 |         unsafe { std::env::set_var("ROUTIIUM_RESPONSE_GUARD", "shadow") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2282:9
[INFO] [stdout]      |
[INFO] [stdout] 2282 |         unsafe { std::env::remove_var("ROUTIIUM_RESPONSE_GUARD") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2289:9
[INFO] [stdout]      |
[INFO] [stdout] 2289 |         unsafe { std::env::set_var("ROUTIIUM_TOOL_RESULT_GUARD", "omit") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2291:9
[INFO] [stdout]      |
[INFO] [stdout] 2291 |         unsafe { std::env::set_var("ROUTIIUM_TOOL_RESULT_GUARD_SELECTION", "exclusive") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2293:9
[INFO] [stdout]      |
[INFO] [stdout] 2293 |         unsafe { std::env::remove_var("ROUTIIUM_TOOL_RESULT_GUARD_TOOLS") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2295:9
[INFO] [stdout]      |
[INFO] [stdout] 2295 |         unsafe { std::env::remove_var("ROUTIIUM_TOOL_RESULT_GUARD_REGEX") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2314:9
[INFO] [stdout]      |
[INFO] [stdout] 2314 |         unsafe { std::env::remove_var("ROUTIIUM_TOOL_RESULT_GUARD") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2316:9
[INFO] [stdout]      |
[INFO] [stdout] 2316 |         unsafe { std::env::remove_var("ROUTIIUM_TOOL_RESULT_GUARD_SELECTION") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2323:9
[INFO] [stdout]      |
[INFO] [stdout] 2323 |         unsafe { std::env::set_var("ROUTIIUM_TOOL_RESULT_GUARD", "warn") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2325:9
[INFO] [stdout]      |
[INFO] [stdout] 2325 |         unsafe { std::env::set_var("ROUTIIUM_TOOL_RESULT_GUARD_SELECTION", "inclusive") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2327:9
[INFO] [stdout]      |
[INFO] [stdout] 2327 |         unsafe { std::env::set_var("ROUTIIUM_TOOL_RESULT_GUARD_TOOLS", "browser_fetch") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2329:9
[INFO] [stdout]      |
[INFO] [stdout] 2329 |         unsafe { std::env::remove_var("ROUTIIUM_TOOL_RESULT_GUARD_REGEX") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2349:9
[INFO] [stdout]      |
[INFO] [stdout] 2349 |         unsafe { std::env::remove_var("ROUTIIUM_TOOL_RESULT_GUARD") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2351:9
[INFO] [stdout]      |
[INFO] [stdout] 2351 |         unsafe { std::env::remove_var("ROUTIIUM_TOOL_RESULT_GUARD_SELECTION") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/safety_judge.rs:2353:9
[INFO] [stdout]      |
[INFO] [stdout] 2353 |         unsafe { std::env::remove_var("ROUTIIUM_TOOL_RESULT_GUARD_TOOLS") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/server.rs:2056:36
[INFO] [stdout]      |
[INFO] [stdout] 2056 |                     Some(value) => unsafe { std::env::set_var(key, value) },
[INFO] [stdout]      |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/server.rs:2058:29
[INFO] [stdout]      |
[INFO] [stdout] 2058 |                     None => unsafe { std::env::remove_var(key) },
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/server.rs:2209:9
[INFO] [stdout]      |
[INFO] [stdout] 2209 |         unsafe { std::env::remove_var("ROUTIIUM_INSECURE_ADMIN") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/server.rs:2217:9
[INFO] [stdout]      |
[INFO] [stdout] 2217 |         unsafe { std::env::set_var("ROUTIIUM_INSECURE_ADMIN", "1") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]    --> src/util.rs:152:9
[INFO] [stdout]     |
[INFO] [stdout] 152 |         unsafe { std::env::set_var(key, value) };
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1238:32
[INFO] [stdout]      |
[INFO] [stdout] 1238 |                     Some(v) => unsafe { std::env::set_var(key, v) },
[INFO] [stdout]      |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1240:29
[INFO] [stdout]      |
[INFO] [stdout] 1240 |                     None => unsafe { std::env::remove_var(key) },
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1264:9
[INFO] [stdout]      |
[INFO] [stdout] 1264 |         unsafe { std::env::remove_var("ROUTIIUM_MANAGED_MODE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1266:9
[INFO] [stdout]      |
[INFO] [stdout] 1266 |         unsafe { std::env::remove_var("OPENAI_API_KEY") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1270:9
[INFO] [stdout]      |
[INFO] [stdout] 1270 |         unsafe { std::env::set_var("OPENAI_API_KEY", "sk-test") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1274:9
[INFO] [stdout]      |
[INFO] [stdout] 1274 |         unsafe { std::env::set_var("ROUTIIUM_MANAGED_MODE", "off") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1278:9
[INFO] [stdout]      |
[INFO] [stdout] 1278 |         unsafe { std::env::set_var("ROUTIIUM_MANAGED_MODE", "managed") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1282:9
[INFO] [stdout]      |
[INFO] [stdout] 1282 |         unsafe { std::env::set_var("ROUTIIUM_MANAGED_MODE", "") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1292:9
[INFO] [stdout]      |
[INFO] [stdout] 1292 |         unsafe { std::env::remove_var("ROUTIIUM_UPSTREAM_MODE") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1296:9
[INFO] [stdout]      |
[INFO] [stdout] 1296 |         unsafe { std::env::set_var("ROUTIIUM_UPSTREAM_MODE", "chat") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1300:9
[INFO] [stdout]      |
[INFO] [stdout] 1300 |         unsafe { std::env::set_var("ROUTIIUM_UPSTREAM_MODE", "bedrock") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1319:9
[INFO] [stdout]      |
[INFO] [stdout] 1319 | /         unsafe { std::env::set_var(
[INFO] [stdout] 1320 | |             "ROUTIIUM_BACKENDS",
[INFO] [stdout] 1321 | |             "prefix=gpt-4o,base=https://openai.example/v1,mode=responses; \
[INFO] [stdout] 1322 | |              prefix=vllm-,base=http://127.0.0.1:8000/v1,key_env=VLLM_API_KEY,mode=chat; \
[INFO] [stdout] 1323 | |              prefix=claude-,base=https://anthropic.example/v1,mode=responses",
[INFO] [stdout] 1324 | |         ) };
[INFO] [stdout]      | |___________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1326:9
[INFO] [stdout]      |
[INFO] [stdout] 1326 |         unsafe { std::env::set_var("ROUTIIUM_UPSTREAM_MODE", "responses") };
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: usage of an `unsafe` block
[INFO] [stdout]     --> src/util.rs:1347:9
[INFO] [stdout]      |
[INFO] [stdout] 1347 | /         unsafe { std::env::set_var(
[INFO] [stdout] 1348 | |             "ROUTIIUM_BACKENDS",
[INFO] [stdout] 1349 | |             "prefix=good;base=https://good/v1;prefix=missing_base;prefix=ok;base=https://ok/v1",
[INFO] [stdout] 1350 | |         ) };
[INFO] [stdout]      | |___________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `routiium` (lib) due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `routiium` (lib test) due to 36 previous errors
[INFO] running `Command { std: "docker" "inspect" "b18866f93e00edf7c1b1349536d5ae309c0720885f4a9126fe6a0983d4c6a704", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b18866f93e00edf7c1b1349536d5ae309c0720885f4a9126fe6a0983d4c6a704", kill_on_drop: false }`
[INFO] [stdout] b18866f93e00edf7c1b1349536d5ae309c0720885f4a9126fe6a0983d4c6a704
